package com.wzdigit.wms.basic.client.request.transfer;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;

/**
 * 出库报表-主档搜索输入
 * @author yangdongjie
 * @param <T>
 * @param <T>
 * @GetWarehouseListRequest.java
 * @2020年12月31日下午3:40:49
 */
@Data
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonIgnoreProperties(value = {"hibernateLazyInitializer", "handler", "fieldHandler"}, ignoreUnknown = true)
public class SearchGdnHeaderReportRequest implements Serializable {

	private static final long serialVersionUID = -5812482285373909439L;

	/**
	 * 出库单号
	 */
    @ApiModelProperty(value = "出库单号", required = false)
    private String gdnNo;
    
    /**
     * 来源单号
     */
    @ApiModelProperty(value = "来源单号", required = false)
    private String sourceShipNotice;

	/**
	 * 订单号
	 */
    @ApiModelProperty(value = "订单号", required = false)
    private String poNo;
    
    /**
	 * 销售订单号
	 */
    @ApiModelProperty(value = "销售订单号", required = false)
    private String soNo;
    
    /**
     * 物料编码
     */
    @ApiModelProperty(value = "物料编码", required = false)
    private String skuCode;
    
    /**
     * 单据类型
     */
    @ApiModelProperty(value = "单据类型", required = false)
    private String gdnType;

    /**
     * 状态
     */
    @ApiModelProperty(value = "状态", required = false)
    private Integer status;
    
    /**
     * 仓库ID
     */
    @ApiModelProperty(value = "仓库ID", required = false)
    private Integer whsId;
    
    /**
     * 通过出库单号或者来源单号模糊查询
     */
    @ApiModelProperty(value = "通过出库单号或者来源单号模糊查询", required = false)
    private String filter;

    /**
     * 出库时间段头
     */
    @ApiModelProperty(value = "出库时间段头", required = false, example = "")
    private Long beginTime;

    /**
     * 出库时间段尾
     */
    @ApiModelProperty(value = "出库时间段尾", required = false, example = "")
    private Long endTime;

    /**
     * 出库时间段头
     */
    @ApiModelProperty(value = "关单时间段头", required = false, example = "")
    private Long closeBeginTime;

    /**
     * 出库时间段尾
     */
    @ApiModelProperty(value = "关单时间段尾", required = false, example = "")
    private Long closeEndTime;

}
